<?php
/**
 * @category   Epic
 * @package    Epic_Controller
 * @author     Epic Core Team <nguyendnhat@gmail.com>
 */
abstract class Epic_Controller_Request_Abstract
{	
    /**
     * Module name
     * @var string
     */
    protected $_module;
	
    /**
     * Controller name
     * @var string
     */
    protected $_controller;

    /**
     * Action name
     * @var string
     */
    protected $_action;

    /**
     * Retrieve the module name
     *
     * @return string
     */
    public function getModuleName()
    {
        return $this->_module;
    }

    /**
     * Set the module name to use
     *
     * @param string $value
     * @return Epic_Controller_Request_Abstract
     */
    public function setModuleName($value)
    {
        $this->_module = $value;
        return $this;
    }
    
    /**
     * Retrieve the controller name
     *
     * @return string
     */
    public function getControllerName()
    {
        return $this->_controller;
    }

    /**
     * Set the controller name to use
     *
     * @param string $value
     * @return Epic_Controller_Request_Abstract
     */
    public function setControllerName($value)
    {
        $this->_controller = $value;
        return $this;
    }

    /**
     * Retrieve the action name
     *
     * @return string
     */
    public function getActionName()
    {
        return $this->_action;
    }

    /**
     * Set the action name
     *
     * @param string $value
     * @return Epic_Controller_Request_Abstract
     */
    public function setActionName($value)
    {
        $this->_action = $value;
        return $this;
    }
}
